package com.wwz.swordfingeroffer;


import org.junit.Test;

import java.util.ArrayList;
import java.util.List;

/**
 * 请从字符串中找出一个最长的不包含重复字符的子字符串，计算该最长子字符串的长度。
 * <p>
 * 输入: "abcabcbb"
 * 输出: 3
 * 解释: 因为无重复字符的最长子串是 "abc"，所以其长度为 3。
 */
public class swordFinger48 {

    @Test
    public void test() {
        System.out.println(lengthOfLongestSubstring("pwwkew"));
    }

    public int lengthOfLongestSubstring(String s) {
        int res = 0;
        List<String> list = new ArrayList<>();
        for (int i = 0; i < s.length(); i++) {
            int j = i;
            list.clear();
            while (j < s.length() && !list.contains(String.valueOf(s.charAt(j)))) {
                list.add(String.valueOf(s.charAt(j)));
                j++;
                if (res < list.size()) {
                    res = list.size();
                }

            }
        }
        return res;
    }
}
